package pe.gob.sunarp.entidad;

import java.io.Serializable;
import javax.persistence.*;
import java.math.BigDecimal;
import java.util.Date;


/**
 * The persistent class for the DETALLE_TITULO database table.
 * 
 */
@Entity
@Table(name="DETALLE_TITULO")
public class DetalleTitulo implements Serializable {
	private static final long serialVersionUID = 1L;
	private DetalleTituloPK id;
	private String agntSync;
	private String esTituCali;
	private String fgActivo;
	private BigDecimal montoLiq;
	private String puCtrl;
	private Date tsCrea;
	private Date tsUltSync;
	private TmEstadoTitulo tmEstadoTitulo;
	private Titulo titulo;

    public DetalleTitulo() {
    }


	@EmbeddedId
	public DetalleTituloPK getId() {
		return this.id;
	}

	public void setId(DetalleTituloPK id) {
		this.id = id;
	}
	

	@Column(name="AGNT_SYNC", length=4)
	public String getAgntSync() {
		return this.agntSync;
	}

	public void setAgntSync(String agntSync) {
		this.agntSync = agntSync;
	}


	@Column(name="ES_TITU_CALI", length=2)
	public String getEsTituCali() {
		return this.esTituCali;
	}

	public void setEsTituCali(String esTituCali) {
		this.esTituCali = esTituCali;
	}


	@Column(name="FG_ACTIVO", nullable=false, length=1)
	public String getFgActivo() {
		return this.fgActivo;
	}

	public void setFgActivo(String fgActivo) {
		this.fgActivo = fgActivo;
	}


	@Column(name="MONTO_LIQ", nullable=false, precision=12, scale=2)
	public BigDecimal getMontoLiq() {
		return this.montoLiq;
	}

	public void setMontoLiq(BigDecimal montoLiq) {
		this.montoLiq = montoLiq;
	}


	@Column(name="PU_CTRL", length=2)
	public String getPuCtrl() {
		return this.puCtrl;
	}

	public void setPuCtrl(String puCtrl) {
		this.puCtrl = puCtrl;
	}


    @Temporal( TemporalType.DATE)
	@Column(name="TS_CREA")
	public Date getTsCrea() {
		return this.tsCrea;
	}

	public void setTsCrea(Date tsCrea) {
		this.tsCrea = tsCrea;
	}


    @Temporal( TemporalType.DATE)
	@Column(name="TS_ULT_SYNC")
	public Date getTsUltSync() {
		return this.tsUltSync;
	}

	public void setTsUltSync(Date tsUltSync) {
		this.tsUltSync = tsUltSync;
	}


	//bi-directional many-to-one association to TmEstadoTitulo
    @ManyToOne
	@JoinColumn(name="ESTADO_TITULO_ID", nullable=false)
	public TmEstadoTitulo getTmEstadoTitulo() {
		return this.tmEstadoTitulo;
	}

	public void setTmEstadoTitulo(TmEstadoTitulo tmEstadoTitulo) {
		this.tmEstadoTitulo = tmEstadoTitulo;
	}
	

	//bi-directional many-to-one association to Titulo
    @ManyToOne
	@JoinColumn(name="REFNUM_TITU", nullable=false, insertable=false, updatable=false)
	public Titulo getTitulo() {
		return this.titulo;
	}

	public void setTitulo(Titulo titulo) {
		this.titulo = titulo;
	}
	
}